看一百遍美女,美女也不一定是你的。但你刷一百遍算法,知识就是你的了~~
谁能九层台,不用累土起!
题目
给你一个整数 n ,请你找出并返回第 n 个 丑数 。
丑数 就是只包含质因数 2、3 和/或 5 的正整数。
示例 1:
1 | 输入: n = 10 |
示例 2:
1 | 输入: n = 1 |
提示:
1 <= n <= 1690
解题思路
- 从
1开始,由于1是特殊的丑数 - 因为丑数是只包含
2、3、5为因数,因此后续的丑数必然是由前面的丑数*2/3/5得到 - 我们维护三个指针分别计数,如果指针位置的丑数
*指针的值等于当前的丑数,该指针加一
解题代码
1 | var nthUglyNumber = function(n) { |
如有任何问题或建议,欢迎留言讨论!